<?php

include ("jpgraph/src/jpgraph.php");

Class Reportgraph {

    function piegraph($graphname, $data, $brand) {

        include ("jpgraph/src/jpgraph_pie.php");
        //print_r($data);
        // สร้างอ็อบเจ็คผ่านคลาส PieGraph แทนคลาส Graph ในบทความก่อน ๆ ครับ
        $graph = new PieGraph(300,300,"auto");
        $graph->SetShadow();
        $graph->title->SetFont(FF_COURIER, FS_BOLD, 11);
        $graph->img->SetMargin(50, 30, 50, 50);
        $graph->title->Set($graphname);
        $graph->title->SetFont(FF_COURIER, FS_BOLD, 11);
        $i = 0;
        foreach ($brand as $brand) {
            $brands[$i] = $brand['brand_c'];
            $i++;
        }
        // ใส่ค่าให้กับ PiePlot เพื่อทำการ Plot ค่าต่าง ๆ ออกมาเก็บไว้ในอ็อบเจ็ค $p1
        $p1 = new PiePlot($data);
        // กำหนดสีให้กับเส้นขอบวงกลม
        $p1->SetColor('red@0.5');
        // กำหนดเงาให้กับ Pie Graph

        $p1->SetShadow('black@0.8', 2);
        // กำหนดสีแต่ละสีที่เราต้องการให้กับ Pie Graph
        $p1->SetSliceColors(array('red@0.5', 'green@0.5', 'blue@0.5', 'yellow@0.5', 'black@0.5', 'orange@0.5', 'grey@0.5'));

        $p1->SetLegends($brands);
        $graph->legend->Pos(-0.1, 0.3, 'right', 'right');
        $p1->SetCenter(50);
        $graph->legend->SetColor('black', 'black');
        $graph->legend->SetColumns(1);
        $p1->SetValueType(PIE_VALUE_ABS);

        // กำหนดรูแบบการแสดงค่าในที่นี้เป็นการแสดงตัวเลขจำนวนเต็ม
        $p1->value->SetFormat('%s');
        //$p1->SetLabelType(2);
        $p1->ShowBorder(FALSE, true);
        $p1->value->SetFont(FF_COURIER, FS_BOLD, 8);

        $graph->Add($p1);
        $graph->Stroke("/var/www/crmreport/brandmix.png");
    }

    function linegraph($ttmonth, $ttbybrand) {
        //print_r($month);
        include ("jpgraph/src/jpgraph_line.php");
        $graph = new Graph(1000,300);
        $datax = array("JAN", "FEB", "MAR", "APR", "MAY", "JUN", "JUL", "AUG", "SEP", "OCT", "NOV", "DEC");
        $graph->title->Set('Brand Monthly Sale Chart');

        foreach ($ttbybrand as $ttbybrands) {//แล้ววก็วนลูบตรวจว่าข้อมูลที่เข้ามาตรงกับเดือนไหน
            foreach ($ttmonth as $ttmonths) {
                if (strcasecmp($ttbybrands['brand_c'], $ttmonths['brand_c']) == 0) {
                    $line[] = $ttmonths['brand_total'];
                }
               
            }
            $graph->SetScale('intlin');
            $graph->SetBox(true, array(220, 250, 50), 2);
            $gline = new LinePlot($line);
            $graph->xaxis->SetTickLabels($datax);
            $gline->SetWeight(1);
            $gline->SetLegend($ttbybrands['brand_c']);
            $gline->SetCenter(50);
            $graph->Add($gline);
            unset($line);
        }
        $gline->SetStyle('solid');
        $graph->SetBackgroundGradient('white', 'blue:0.1', GRAD_HOR, BGRAD_FRAME);
        $graph->yaxis->scale->ticks->Set(10);
        $graph->legend->Pos(0.0, 0.2);
        $graph->legend->SetColumns(1);
        $graph->legend->SetFont(FF_COURIER, FS_NORMAL, 8);
        $graph->legend->SetFillColor('#FCFCCC');
        $graph->legend->SetShadow('gray@0.4', 3);
        $graph->SetMargin(60, 30,50, 20);
        $graph->SetBackgroundImage('./picture/graphbg.png',BGIMG_FILLFRAME); 
        $graph->Stroke("/var/www/crmreport/bms.png");
    }

}

?>